package org.x.user.dto;

import lombok.Data;
import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;
import jakarta.validation.groups.Default;
import jakarta.validation.constraints.NotBlank;
import io.swagger.v3.oas.annotations.media.Schema;

/**
 * 租户信息入参实体类
 *
 * @author 夏包包
 * @date 2025-03-08 13:39:03
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class TenantDTO {

    /**
     * 租户ID
     */
    @NotBlank(groups = { DeleteGroup.class, UpdateGroup.class }, message = "租户ID不能为空")
    @Schema(description = "租户ID")
    private String tenantId;

    /**
     * 租户名称
     */
    @NotBlank(groups = { CreateGroup.class, Default.class }, message = "租户名称不能为空")
    @Schema(description = "租户名称")
    private String tenantName;

    /**
     * 租户描述
     */
    @Schema(description = "租户描述")
    private String tenantDesc;

    /**
     * 租户编码
     */
    @Schema(description = "租户编码")
    private String tenantCode;

    /**
     * 租户状态
     */
    @Schema(description = "租户状态")
    private String tenantStatus;

    /**
     * 租户配置
     */
    @Schema(description = "租户配置")
    private String tenantConfig;

    /**
     * 超级管理员ID
     */
    @Schema(description = "超级管理员ID")
    private String adminId;
}
